<?php include("../data/mysql.class.php"); ?>
<?php include("WeixinPay.php"); ?>
<?php
date_default_timezone_set("PRC");
$postXml = file_get_contents('php://input');
if (empty($postXml)) {
    return false;
}

/*==查询系统设置参数 微信配置参数  start==*/
$connt = new Mysql();
$rs = $connt->getRow("select * from web_setting where id=1");
if ($rs) {
    $mch_id = $rs["wxtitle"];//==微信商户号==
    $key = $rs["wxtoken"];//==微信key==
    $appid = $rs["wxappid"];//==微信appid===
    $secret = $rs["wxsecret"];//==微信secret==
    $weburl = $rs["weburl"];//==微信secret==
}
/*==查询系统设置参数 微信配置参数  end==*/

$weixinpay = new WeixinPay('','','',$key,'','','');
$verify = $weixinpay->verify($postXml);
//验签不通过
if ($verify){
    $attr = xmlToArray($postXml);
    file_put_contents('./wxpay_notify.txt', '时间：' . date('Y-m-d H:i:s') . "\t，数据：" . var_export($attr, true) . "\r\n", FILE_APPEND);
    $out_trade_no = $attr['out_trade_no'];
    if ($attr['return_code'] == 'SUCCESS' && $attr['result_code'] == 'SUCCESS') {
        $conu = new Mysql();
        $rs = $conu->query("update d_order set o_paystate=1 where o_formid='" . $out_trade_no . "'");
    }
} else{
    file_put_contents('./wxpay_notify.txt', '时间：' . date('Y-m-d H:i:s') . "，验签失败\r\n", FILE_APPEND);
}
$xml = "<xml>
            <return_code><![CDATA[SUCCESS]]></return_code>
            <return_msg><![CDATA[支付成功]]></return_msg>
        </xml>";
echo $xml;
exit();

//将xml格式转换成数组
function xmlToArray($xml)
{
    //禁止引用外部xml实体
    libxml_disable_entity_loader(true);
    $xmlstring = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
    $val = json_decode(json_encode($xmlstring), true);
    return $val;
}


?>